#ifndef	LIA_AUDIOFILE_H
#define LIA_AUDIOFILE_H

#include <LIA/liaCommon.h>

namespace Lia {

struct WaveformData
{
	int channelCount;
	int sampleCount;
	int sampleRate;
	float* samples;
};

class LIA_API AudioFile : public AudioSource
{
public:
	AudioFile(const char* fileName);
	AudioFile(const wchar_t* fileName);
	~AudioFile();

	const WaveformData& GetData() const {return mData;}
	int GetNextBlockSamples(LayerInfo& layer, int sampleCount, float* buffer, bool& endOfSource);

private:
	WaveformData mData;
};

}; // namespace Lia

#endif /* LIA_AUDIOFILE_H */